from  pyecharts import options as opts
from  pyecharts.charts import  Radar
import pandas as pd
import xlrd

#导入数据
df = pd.read_excel('D:/dataset (2)/dataset/居民人均收支.xls',header=0)
#获取居民、城镇居民和农村居民人均消费支出的数据
df1 = df.iloc[6:11:2]
dim1 = max(df1['2020年']) + 10000
dim2 = max(df1['2019年']) + 10000
dim3 = max(df1['2019年']) + 10000
dim4 = max(df1['2019年']) + 10000
dim5 = max(df1['2019年']) + 10000

#获取2016-2020年居民人均消费支出的数据
data1 = [list(df1.iloc[0,[5,4,3,2,1]])]
#获取2016-2020年城镇居民人均消费支出的数据
data2 = [list(df1.iloc[1,[5,4,3,2,1]])]
#获取2016-2020年农村居民人均消费支出的数据
data3 = [list(df1.iloc[2,[5,4,3,2,1]])]

#绘制雷达图
c = (
     Radar()
     .add_schema(
         schema=[#调整雷达图各维度的范围大小
             opts.RadarIndicatorItem(name="2016",max_=dim5),
             opts.RadarIndicatorItem(name="2017",max_=dim4),
             opts.RadarIndicatorItem(name="2018",max_=dim3),
             opts.RadarIndicatorItem(name="2019",max_=dim2),
             opts.RadarIndicatorItem(name="2010",max_=dim1),
         ]

     )
    .add("居民人均消费支出",data1,linestyle_opts=opts.LineStyleOpts(color="#FF0000"),)
    .add("居民人均消费支出",data2,linestyle_opts=opts.LineStyleOpts(color="#0033FF"),)
    .add("居民人均消费支出",data3,linestyle_opts=opts.LineStyleOpts(color="#00FF00"),)
    #全局配置项
    .set_global_opts(
         legend_opts=opts.LegendOpts(orient='vertical',
                                     pos_right=120),
         title_opts=opts.TitleOpts(
             title="2016-2020年居民人均消费情况",
             subtitle="单位:元"
         ),
#添加脚注
        graphic_opts=opts.GraphicGroup(
            graphic_item=opts.GraphicItem(left='12%',bottom='0%'),
            children=[
                opts.GraphicText(graphic_textstyle_opts=
                opts.GraphicTextStyleOpts(text="数据来源:国家统计局",
                                        font="14px Microsoft YaHei"))
            ]
     ),

 )
.render("d:/html/task6-17.html")
)

